#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
应用配置管理
包含职业类别、行政区划、邮政编码等映射关系和应用设置
"""

# 职业类别映射表
OCCUPATION_MAPPING = {
    '2A': '诊断放射学',
    '2B': '牙科放射学', 
    '2C': '核医学',
    '2D': '放射治疗',
    '2E': '介入放射学',
    '2F': '其它',
    '3A': '工业辐照',
    '3B': '工业探伤',
    '3C': '发光涂料工业',
    '3D': '放射性同位素生产',
    '3G': '其它',
    '6A': '教育',
    '6B': '兽医学',
    '6C': '其它'
}

# 广东省各市区映射表
GUANGDONG_DISTRICTS = {
    '广州市': ['越秀区', '海珠区', '荔湾区', '天河区', '白云区', '黄埔区', '花都区', '番禺区', '南沙区', '从化区', '增城区'],
    '深圳市': ['福田区', '罗湖区', '盐田区', '南山区', '宝安区', '龙岗区', '龙华区', '坪山区', '光明区'],
    '珠海市': ['香洲区', '金湾区', '斗门区', '三灶镇'],
    '汕头市': ['金平区', '龙湖区', '澄海区', '濠江区', '潮阳区', '潮南区', '南澳县'],
    '佛山市': ['禅城区', '南海区', '顺德区', '高明区', '三水区'],
    '韶关市': ['浈江区', '武江区', '曲江区', '乐昌市', '南雄市', '仁化县', '始兴县', '翁源县', '新丰县', '乳源瑶族自治县'],
    '河源市': ['源城区', '东源县', '和平县', '龙川县', '紫金县', '连平县'],
    '梅州市': ['梅江区', '梅县区', '兴宁市', '平远县', '蕉岭县', '大埔县', '丰顺县', '五华县'],
    '惠州市': ['惠城区', '惠阳区', '惠东县', '博罗县', '龙门县'],
    '汕尾市': ['城区', '陆丰市', '海丰县', '陆河县'],
    '东莞市': [
        '莞城街道', '东城街道', '南城街道', '万江街道',  # 4个街道
        '东城区', '南城区', '莞城区', '万江区',  # 常见的区域称呼
        '石碣镇', '石龙镇', '茶山镇', '石排镇', '企石镇', '横沥镇', '桥头镇', 
        '谢岗镇', '东坑镇', '常平镇', '寮步镇', '大朗镇', '黄江镇', '清溪镇', 
        '塘厦镇', '凤岗镇', '大岭山镇', '长安镇', '虎门镇', '厚街镇', '沙田镇', 
        '道滘镇', '洪梅镇', '麻涌镇', '望牛墩镇', '中堂镇', '高埗镇', '樟木头镇'  # 28个镇
    ],
    '中山市': [
        '石岐街道', '东区街道', '中山港街道', '西区街道', '南区街道', 
        '五桂山街道', '民众街道', '南朗街道',  # 8个街道
        '黄圃镇', '东凤镇', '古镇镇', '沙溪镇', '坦洲镇', '港口镇', '三角镇', 
        '横栏镇', '南头镇', '阜沙镇', '三乡镇', '板芙镇', '大涌镇', 
        '神湾镇', '小榄镇', '五桂山镇',  # 16个镇
        # 新区和功能区
        '翠亨新区', '火炬开发区',
        # 简化区域名称（兼容性考虑）
        '石岐区', '东区', '西区', '南区', '火炬区'
    ],
    '江门市': ['蓬江区', '江海区', '新会区', '台山市', '开平市', '鹤山市', '恩平市'],
    '阳江市': ['江城区', '阳东区', '阳春市', '阳西县'],
    '湛江市': ['赤坎区', '霞山区', '麻章区', '坡头区', '雷州市', '廉江市', '吴川市', '遂溪县', '徐闻县'],
    '茂名市': ['茂南区', '电白区', '信宜市', '高州市', '化州市'],
    '肇庆市': ['端州区', '鼎湖区', '高要区', '四会市', '广宁县', '德庆县', '封开县', '怀集县'],
    '清远市': ['清城区', '清新区', '英德市', '连州市', '佛冈县', '阳山县', '连山壮族瑶族自治县', '连南瑶族自治县'],
    '潮州市': ['湘桥区', '潮安区', '饶平县'],
    '揭阳市': ['榕城区', '揭东区', '普宁市', '揭西县', '惠来县'],
    '云浮市': ['云城区', '云安区', '罗定市', '新兴县', '郁南县']
}

# 特殊区域映射（功能区等映射到实际行政区）
SPECIAL_AREAS = {
    '高新区': '香洲区',  # 珠海高新区一般属于香洲区
    '高新技术产业开发区': '香洲区',
    '经济技术开发区': '',  # 需要根据具体城市判断
    '保税区': '',
    '新区': ''
}

# 广东省各市邮政编码映射表
GUANGDONG_POSTAL_CODES = {
    '广州市': '510000',
    '韶关市': '512000',
    '深圳市': '518000',
    '珠海市': '519000',
    '汕头市': '515000',
    '佛山市': '528000',
    '江门市': '529000',
    '湛江市': '524000',
    '茂名市': '525000',
    '肇庆市': '526000',
    '惠州市': '516000',
    '梅州市': '514000',
    '汕尾市': '516600',
    '河源市': '517000',
    '阳江市': '529500',
    '清远市': '511500',
    '东莞市': '523000',
    '中山市': '528400',
    '潮州市': '521000',
    '揭阳市': '522000',
    '云浮市': '527300'
}

# CSV输出字段顺序
CSV_FIELDNAMES = [
    '受检单位名称', '单位地址', '省', '市', '区（镇）', '邮政编码',
    '收样日期', '报告编号', '检测日期', '样品数量', '检测仪器', '检测任务编号', 
    '部门', '样品编号', '姓名', '身份证号', '性别', '射线及防护类型（是否穿铅衣）', 
    '职业类别', '佩戴周期', '剂量当量', '是否超调查水平（1.25mSv）'
]

# 应用设置
APP_SETTINGS = {
    # 季度剂量超标阈值 (mSv)
    'QUARTERLY_DOSE_THRESHOLD': 1.25,
    
    # 年度剂量超标阈值 (mSv)
    'ANNUAL_DOSE_THRESHOLD': 5.0,
    
    # 默认Excel文件路径
    'DEFAULT_EXCEL_PATH': 'data/个人剂量监测各单位编号汇总.xlsx',
    
    # 默认Excel工作表名称
    'EXCEL_SHEET_NAME': '编号汇总',
    
    # GUI界面设置
    'GUI_SETTINGS': {
        'WINDOW_SIZE': '900x650',
        'MIN_SIZE': (800, 600),
        'TITLE': '个人剂量监测报告批量提取工具'
    },
    
    # 结果目录设置
    'RESULTS_DIR': 'results',
    
    # 季度汇总表历史备份目录
    'QUARTERLY_ARCHIVES_DIR': 'quarterly_archives',
    
    # 支持的文档类型
    'SUPPORTED_FORMATS': ['.docx'],
    
    # 日志设置
    'LOG_SETTINGS': {
        'FONT_FAMILY': 'Consolas',
        'FONT_SIZE': 9,
        'HEIGHT': 12
    }
}
